﻿namespace CommonFramework.FixMath.LookupTable
{
	public static class FLookupTableACos
	{
		public static readonly int COUNT;

		public static readonly int HALF_COUNT;

		public static readonly int[] Table;

		static FLookupTableACos()
		{
			COUNT = 1024;
			HALF_COUNT = COUNT >> 1;
			Table = new int[]
			{
				31416,
				30791,
				30532,
				30333,
				30165,
				30017,
				29883,
				29760,
				29646,
				29538,
				29436,
				29339,
				29247,
				29158,
				29072,
				28989,
				28909,
				28832,
				28756,
				28683,
				28612,
				28542,
				28474,
				28407,
				28342,
				28278,
				28215,
				28154,
				28093,
				28034,
				27976,
				27918,
				27862,
				27806,
				27751,
				27697,
				27644,
				27591,
				27539,
				27488,
				27437,
				27387,
				27337,
				27288,
				27240,
				27192,
				27145,
				27098,
				27051,
				27005,
				26960,
				26915,
				26870,
				26826,
				26782,
				26738,
				26695,
				26652,
				26610,
				26568,
				26526,
				26485,
				26444,
				26403,
				26362,
				26322,
				26282,
				26243,
				26203,
				26164,
				26125,
				26087,
				26048,
				26010,
				25973,
				25935,
				25898,
				25860,
				25823,
				25787,
				25750,
				25714,
				25678,
				25642,
				25606,
				25571,
				25536,
				25500,
				25466,
				25431,
				25396,
				25362,
				25328,
				25293,
				25260,
				25226,
				25192,
				25159,
				25126,
				25092,
				25059,
				25027,
				24994,
				24961,
				24929,
				24897,
				24865,
				24833,
				24801,
				24769,
				24737,
				24706,
				24675,
				24643,
				24612,
				24581,
				24550,
				24520,
				24489,
				24459,
				24428,
				24398,
				24368,
				24337,
				24308,
				24278,
				24248,
				24218,
				24189,
				24159,
				24130,
				24100,
				24071,
				24042,
				24013,
				23984,
				23955,
				23927,
				23898,
				23869,
				23841,
				23813,
				23784,
				23756,
				23728,
				23700,
				23672,
				23644,
				23616,
				23589,
				23561,
				23533,
				23506,
				23478,
				23451,
				23424,
				23397,
				23369,
				23342,
				23315,
				23288,
				23262,
				23235,
				23208,
				23181,
				23155,
				23128,
				23102,
				23075,
				23049,
				23023,
				22997,
				22970,
				22944,
				22918,
				22892,
				22866,
				22840,
				22815,
				22789,
				22763,
				22738,
				22712,
				22687,
				22661,
				22636,
				22610,
				22585,
				22560,
				22535,
				22509,
				22484,
				22459,
				22434,
				22409,
				22384,
				22360,
				22335,
				22310,
				22285,
				22261,
				22236,
				22212,
				22187,
				22163,
				22138,
				22114,
				22089,
				22065,
				22041,
				22017,
				21992,
				21968,
				21944,
				21920,
				21896,
				21872,
				21848,
				21824,
				21801,
				21777,
				21753,
				21729,
				21706,
				21682,
				21658,
				21635,
				21611,
				21588,
				21564,
				21541,
				21518,
				21494,
				21471,
				21448,
				21424,
				21401,
				21378,
				21355,
				21332,
				21309,
				21286,
				21263,
				21240,
				21217,
				21194,
				21171,
				21148,
				21125,
				21103,
				21080,
				21057,
				21034,
				21012,
				20989,
				20967,
				20944,
				20921,
				20899,
				20876,
				20854,
				20832,
				20809,
				20787,
				20764,
				20742,
				20720,
				20698,
				20675,
				20653,
				20631,
				20609,
				20587,
				20565,
				20543,
				20520,
				20498,
				20476,
				20455,
				20433,
				20411,
				20389,
				20367,
				20345,
				20323,
				20301,
				20280,
				20258,
				20236,
				20214,
				20193,
				20171,
				20149,
				20128,
				20106,
				20085,
				20063,
				20042,
				20020,
				19999,
				19977,
				19956,
				19934,
				19913,
				19891,
				19870,
				19849,
				19827,
				19806,
				19785,
				19764,
				19742,
				19721,
				19700,
				19679,
				19658,
				19636,
				19615,
				19594,
				19573,
				19552,
				19531,
				19510,
				19489,
				19468,
				19447,
				19426,
				19405,
				19384,
				19363,
				19342,
				19321,
				19300,
				19280,
				19259,
				19238,
				19217,
				19196,
				19175,
				19155,
				19134,
				19113,
				19093,
				19072,
				19051,
				19030,
				19010,
				18989,
				18969,
				18948,
				18927,
				18907,
				18886,
				18866,
				18845,
				18825,
				18804,
				18784,
				18763,
				18743,
				18722,
				18702,
				18681,
				18661,
				18640,
				18620,
				18600,
				18579,
				18559,
				18539,
				18518,
				18498,
				18478,
				18457,
				18437,
				18417,
				18396,
				18376,
				18356,
				18336,
				18316,
				18295,
				18275,
				18255,
				18235,
				18215,
				18194,
				18174,
				18154,
				18134,
				18114,
				18094,
				18074,
				18054,
				18034,
				18013,
				17993,
				17973,
				17953,
				17933,
				17913,
				17893,
				17873,
				17853,
				17833,
				17813,
				17793,
				17773,
				17753,
				17734,
				17714,
				17694,
				17674,
				17654,
				17634,
				17614,
				17594,
				17574,
				17554,
				17535,
				17515,
				17495,
				17475,
				17455,
				17435,
				17415,
				17396,
				17376,
				17356,
				17336,
				17316,
				17297,
				17277,
				17257,
				17237,
				17218,
				17198,
				17178,
				17158,
				17139,
				17119,
				17099,
				17079,
				17060,
				17040,
				17020,
				17001,
				16981,
				16961,
				16942,
				16922,
				16902,
				16883,
				16863,
				16843,
				16824,
				16804,
				16784,
				16765,
				16745,
				16725,
				16706,
				16686,
				16666,
				16647,
				16627,
				16608,
				16588,
				16568,
				16549,
				16529,
				16510,
				16490,
				16470,
				16451,
				16431,
				16412,
				16392,
				16373,
				16353,
				16333,
				16314,
				16294,
				16275,
				16255,
				16236,
				16216,
				16196,
				16177,
				16157,
				16138,
				16118,
				16099,
				16079,
				16060,
				16040,
				16021,
				16001,
				15981,
				15962,
				15942,
				15923,
				15903,
				15884,
				15864,
				15845,
				15825,
				15806,
				15786,
				15767,
				15747,
				15727,
				15708,
				15688,
				15669,
				15649,
				15630,
				15610,
				15591,
				15571,
				15552,
				15532,
				15513,
				15493,
				15474,
				15454,
				15434,
				15415,
				15395,
				15376,
				15356,
				15337,
				15317,
				15298,
				15278,
				15259,
				15239,
				15219,
				15200,
				15180,
				15161,
				15141,
				15122,
				15102,
				15083,
				15063,
				15043,
				15024,
				15004,
				14985,
				14965,
				14946,
				14926,
				14906,
				14887,
				14867,
				14848,
				14828,
				14808,
				14789,
				14769,
				14749,
				14730,
				14710,
				14691,
				14671,
				14651,
				14632,
				14612,
				14592,
				14573,
				14553,
				14533,
				14514,
				14494,
				14474,
				14455,
				14435,
				14415,
				14396,
				14376,
				14356,
				14336,
				14317,
				14297,
				14277,
				14258,
				14238,
				14218,
				14198,
				14179,
				14159,
				14139,
				14119,
				14099,
				14080,
				14060,
				14040,
				14020,
				14000,
				13981,
				13961,
				13941,
				13921,
				13901,
				13881,
				13862,
				13842,
				13822,
				13802,
				13782,
				13762,
				13742,
				13722,
				13702,
				13682,
				13662,
				13643,
				13623,
				13603,
				13583,
				13563,
				13543,
				13523,
				13503,
				13483,
				13463,
				13443,
				13422,
				13402,
				13382,
				13362,
				13342,
				13322,
				13302,
				13282,
				13262,
				13242,
				13221,
				13201,
				13181,
				13161,
				13141,
				13121,
				13100,
				13080,
				13060,
				13040,
				13019,
				12999,
				12979,
				12959,
				12938,
				12918,
				12898,
				12877,
				12857,
				12837,
				12816,
				12796,
				12775,
				12755,
				12735,
				12714,
				12694,
				12673,
				12653,
				12632,
				12612,
				12591,
				12571,
				12550,
				12530,
				12509,
				12489,
				12468,
				12447,
				12427,
				12406,
				12385,
				12365,
				12344,
				12323,
				12303,
				12282,
				12261,
				12240,
				12220,
				12199,
				12178,
				12157,
				12136,
				12116,
				12095,
				12074,
				12053,
				12032,
				12011,
				11990,
				11969,
				11948,
				11927,
				11906,
				11885,
				11864,
				11843,
				11822,
				11801,
				11780,
				11758,
				11737,
				11716,
				11695,
				11674,
				11652,
				11631,
				11610,
				11589,
				11567,
				11546,
				11524,
				11503,
				11482,
				11460,
				11439,
				11417,
				11396,
				11374,
				11353,
				11331,
				11310,
				11288,
				11266,
				11245,
				11223,
				11202,
				11180,
				11158,
				11136,
				11115,
				11093,
				11071,
				11049,
				11027,
				11005,
				10983,
				10961,
				10939,
				10917,
				10895,
				10873,
				10851,
				10829,
				10807,
				10785,
				10763,
				10741,
				10718,
				10696,
				10674,
				10651,
				10629,
				10607,
				10584,
				10562,
				10540,
				10517,
				10495,
				10472,
				10449,
				10427,
				10404,
				10382,
				10359,
				10336,
				10313,
				10291,
				10268,
				10245,
				10222,
				10199,
				10176,
				10153,
				10130,
				10107,
				10084,
				10061,
				10038,
				10015,
				9992,
				9968,
				9945,
				9922,
				9898,
				9875,
				9852,
				9828,
				9805,
				9781,
				9758,
				9734,
				9710,
				9687,
				9663,
				9639,
				9615,
				9591,
				9568,
				9544,
				9520,
				9496,
				9472,
				9448,
				9423,
				9399,
				9375,
				9351,
				9327,
				9302,
				9278,
				9253,
				9229,
				9204,
				9180,
				9155,
				9131,
				9106,
				9081,
				9056,
				9031,
				9007,
				8982,
				8957,
				8932,
				8907,
				8881,
				8856,
				8831,
				8806,
				8780,
				8755,
				8729,
				8704,
				8678,
				8653,
				8627,
				8601,
				8575,
				8550,
				8524,
				8498,
				8472,
				8446,
				8419,
				8393,
				8367,
				8341,
				8314,
				8288,
				8261,
				8235,
				8208,
				8181,
				8154,
				8128,
				8101,
				8074,
				8047,
				8019,
				7992,
				7965,
				7938,
				7910,
				7883,
				7855,
				7827,
				7800,
				7772,
				7744,
				7716,
				7688,
				7660,
				7632,
				7603,
				7575,
				7546,
				7518,
				7489,
				7461,
				7432,
				7403,
				7374,
				7345,
				7315,
				7286,
				7257,
				7227,
				7198,
				7168,
				7138,
				7108,
				7078,
				7048,
				7018,
				6988,
				6957,
				6927,
				6896,
				6865,
				6835,
				6804,
				6773,
				6741,
				6710,
				6678,
				6647,
				6615,
				6583,
				6551,
				6519,
				6487,
				6455,
				6422,
				6389,
				6356,
				6324,
				6290,
				6257,
				6224,
				6190,
				6156,
				6122,
				6088,
				6054,
				6020,
				5985,
				5950,
				5915,
				5880,
				5845,
				5810,
				5774,
				5738,
				5702,
				5666,
				5629,
				5592,
				5556,
				5518,
				5481,
				5443,
				5406,
				5368,
				5329,
				5291,
				5252,
				5213,
				5173,
				5134,
				5094,
				5054,
				5013,
				4972,
				4931,
				4890,
				4848,
				4806,
				4764,
				4721,
				4678,
				4634,
				4590,
				4546,
				4501,
				4456,
				4411,
				4365,
				4318,
				4271,
				4224,
				4176,
				4128,
				4079,
				4029,
				3979,
				3928,
				3877,
				3825,
				3772,
				3719,
				3665,
				3610,
				3554,
				3498,
				3440,
				3382,
				3322,
				3262,
				3201,
				3138,
				3074,
				3009,
				2942,
				2874,
				2804,
				2733,
				2659,
				2584,
				2507,
				2427,
				2344,
				2258,
				2169,
				2077,
				1980,
				1878,
				1770,
				1655,
				1532,
				1399,
				1251,
				1083,
				884,
				625,
				0
			};
		}
	}
}